
#if defined _pokemod_included
	#endinput
#endif
#define _pokemod_included

/*
 * Registers a Custom Function for PokeScript to a public function
 *
 * Example:
 *	PokeModRegisterFunction( "GymBattle" );
 *
 *	public PokeScriptGymBattle( iPlayer, szArg1[] )
 *	{
 *	}
 */
native PokeModRegisterFunction( szFuncName[] );

/*
 * Executes a PokeScript on a player
 *
 * Example:
 *	PokeModExecuteScript( id, "EventPrint( You are awesome! )" );
 */
native PokeModExecuteScript( iPlayer, szScriptLine[], any:... );

enum SCRIPT_INFO
{
	SCRIPT_MENU,
	SCRIPT_ITEM,
	SCRIPT_POKENUM,
	SCRIPT_ENCOUNTER_ARRAY,
	SCRIPT_ITEM_USED,
	SCRIPT_ITEMS_GIVEN,
}

/*
 * Returns PokeScript global data
 *
 * Example:
 *	new iMenu = PokeModGetScriptInfo( SCRIPT_MENU );
 */
native any:PokeModGetScriptInfo( SCRIPT_INFO:iInfoNum );

/*
 * Sets PokeScript global data
 *
 * Example:
 *	PokeModSetScriptInfo( SCRIPT_MENU, iMenu );
 */
native PokeModSetScriptInfo( SCRIPT_INFO:iInfoNum, {Array,_}:iSetNum );

/*
 * Forward when a Custom item is used
 *
 * Return 1 if the item was used.
 *
 * *Note - Item must have Custom in the Prop field
 *
 * Example:
 *	public PokeModUseItem( iPlayer, iItem, szItemName[] )
 *	{
 *		client_print( iPlayer, print_center, "Custom Item %s Used", szItemName );
 *		return 1;
 *	}
 */
forward PokeModUseItem( iPlayer, iItem, szItemName[] )


